﻿using System.Collections.Generic;
using ZilLion.Service.Core.DapperWrapper;
using ZilLion.Service.WeChatMall.Domain.Entitys.GsInfo;

namespace ZilLion.Service.WeChatMall.Domain.Repositorys.Interface.GoodInfo
{
    public interface IGsGroupReponsitory
    {
        IEnumerable<GsGroupEntity> GetGroups(string zlcustid);

        
        IEnumerable<GsGroupEntity> GetGroupsByShopid(long shopid);
        /// <summary>
        ///     根据ID 获得货品信息
        /// </summary>
        /// <param name="groupid"></param>
        /// <returns></returns>
        GsGroupEntity GetGroupById(long groupid);

        /// <summary>
        ///     根据货品ID 获得货品分组信息
        /// </summary>
        /// <param name="gsid"></param>
        /// <returns></returns>
        GsGroupEntity GetGroupByGsid(IList<long> gsid);

        /// <summary>
        ///     新增
        /// </summary>
        /// <param name="entity"></param>
        /// <param name="unit"></param>
        void AddGsGroup(GsGroupEntity entity, UnitOfWork unit = null);

        /// <summary>
        ///     修改
        /// </summary>
        /// <param name="entity"></param>
        /// <param name="unit"></param>
        void EditGsGroup(GsGroupEntity entity, UnitOfWork unit = null);

        /// <summary>
        ///     删除
        /// </summary>
        /// <param name="entity"></param>
        /// <param name="unit"></param>
        void RemoveGsGroup(GsGroupEntity entity, UnitOfWork unit = null);


        /// <summary>
        ///     删除
        /// </summary>
        /// <param name="groupid"></param>
        /// <param name="unit"></param>
        void RemoveGsGroupById(long groupid, UnitOfWork unit = null);
    }
}